﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
using Sistema_Totem.Presentacion.Contrato.Proyectos;
using Sistema_Totem.Presentacion.Presentador.Proyectos;
using System.Web.SessionState;
using Sistema_Totem.Clases;

namespace Sistema_Totem.Vista.Proyectos
{
    public partial class AgregarProyecto : System.Web.UI.Page, IContratoAgregarProyecto
    {
        #region Atributos

        private PresentadorAgregarProyecto _presentador;

        #endregion Atributos

        #region Constructor

        public AgregarProyecto()
        {
            _presentador = new PresentadorAgregarProyecto(this);
        }

        #endregion Constructor

        #region Propiedades

        public HttpSessionState Sesion
        {
            get { return Session; }
        }

        public TextBox NombreProyecto
        {
            get { return nombreProyecto; }
            set { nombreProyecto = value; }
        }

        public DropDownList Clientes
        {
            get { return clientes; }
            set { clientes = value; }
        }

        public TextBox AreaProyecto
        {
            get { return areaProyecto; }
            set { areaProyecto = value; }
        }

        public TextBox DescripcionProyecto
        {
            get { return descripcionProyecto; }
            set { descripcionProyecto = value; }
        }

        public ListBox InvolucradosSistema
        {
            get { return involucradosSistema; }
            set { involucradosSistema = value; }
        }

        public ListBox InvolucradosProyecto
        {
            get { return involucradosProyecto; }
            set { involucradosProyecto = value; }
        }

        public DropDownList PlantillasCU
        {
            get { return plantillasCU; }
            set { plantillasCU = value; }
        }

        public DropDownList PlantillasMinuta
        {
            get { return plantillasMinuta; }
            set { plantillasMinuta = value; }
        }

        public DropDownList PlantillasRequerimientos
        {
            get { return plantillasRequerimientos; }
            set { plantillasRequerimientos = value; }
        }

        public DropDownList PlantillasErs
        {
            get { return plantillasErs; }
            set { plantillasErs = value; }
        }

        public DropDownList PlantillasPropuesta
        {
            get { return plantillasPropuesta; }
            set { plantillasPropuesta = value; }
        }

        public Label MensajeConfirmacion
        {
            get { return mensajeConfirmacion; }
            set { mensajeConfirmacion = value; }
        }

        public Label MensajeError
        {
            get { return mensajeError; }
            set { mensajeError = value; }
        }


        public Calendar CalendarioFechaFin
        {
            get { return calendarioFechaFin; }
            set { calendarioFechaFin = value; }
        }

        public Calendar CalendarioFechaInicio
        {
            get { return calendarioFechaInicio; }
            set { calendarioFechaInicio = value; }
        }

        #endregion
       
        #region Métodos

        protected void Page_Load(object sender, EventArgs e)
        {
            
            if (Sesion["usuario"] == null || (Sesion["usuario"] as Usuario).TipoUsuario != "Gerente de proyecto")
                Response.Redirect("../Login/login.aspx");
            else
            {
                if (!IsPostBack)
                {
                    _presentador.pintarComboClientes();
                    _presentador.pintarListadoInvolcradosSistema();
                }
            }
        }

        protected void guardar_Click(object sender, EventArgs e)
        {
            _presentador.AgregarProyecto();
        }

        protected void cancelar_Click(object sender, EventArgs e)
        {
            Response.Redirect("../Proyectos/ListarProyectoGerente.aspx");
        }        

        #endregion Métodos       

    }
}